﻿<?xml version="1.0" encoding="utf-8"?>
<html>
<head>
<script type="text/javascript">

var turkishLetters = "ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVYZ";
var asciiLetters = "ABCCDEFGGHIIJKLMNOOPRSSTUUVYZ";

var toTurkish = createMap(asciiLetters, turkishLetters);
var toAscii = createMap(turkishLetters, asciiLetters);

function createMap(from, to) {
}

function processSyllables(s, fn) {
    return s
        .split(/[AEIİOÖUÜaeıioöuü]/)
        .map(function (t) {
            return t.split(/[B-DF-HJ-NP-TV-ZÇĞŞb-df-hj-np-tv-zçğş]/).join("C");
        })
        .join("V")
        .replace(/(C?C?V(?:C(?!V)(?:C(?!V))?)?)/g, function (m, t, i) {
            return fn(s.substr(i, t.length));
        });
}

var transitions;

function learn(s) {
    transitions = {};
    var prev;
    
    processSyllables(s, function (syllable) {
        syllable = syllable.toLowerCase();

        if (prev) {
            var map = transitions[prev];
            map[syllable] = (map[syllable] || 0) + 1;
        }
        
        prev = syllable;

        if (!transitions[prev]) {
            transitions[prev] = {};
        }
    });
}

function deasciify(s) {
    var prev = [];
    var score = 0;
    var run = 3;
    
    return processSyllables(s, function (syllable) {
        // todo: stateful magic on syllable to deasciify it based on
        // previous syllables.
        // Problem with this is, we only have look-back and no look-ahead :/
        
        return "(" + syllable + ")";
    });
}

function $(id) { return document.getElementById(id); }

window.onload = function () {
    $("learn").onclick = function () {
        learn($("corpus").value);
    };
    $("deasciify").onclick = function () {
        $("output").innerHTML = deasciify($("input").value);
    };
    
    learn($("corpus").value);
};
</script>
</head>
<body>
<textarea id="corpus" cols="40" rows="3">
Bergamototu güzel kokulu, süslü ve çok farklı güzellikte çiçekleri olan bir bitkidir.
Kuzey Amerika'dan çıkmış olan bu bitki, göç edenler tarafından Avrupa'ya tanıtıldığında kullanımı bir anda yaygınlaştı. Adını, kokularının benzemesinden ötürü, İtalyan Bergamot portakılından aldı. Bazı Kızılderili kabileler bergamototunu soğuk algınlığının tedavisinde kullanıyorlardı..
Çok tatlı kırmızı renginde çiçekleri vardır ve kurutulduklarında bile renklerini korurlar. Kurumuş yaprakları ve çiçekleri çoğunlukla odayı güzel kokutan potbori tabağına konulabilirler.
Yabani olanları lavanta renkli çiçek açar, çiçekleri açık pembe ve mor-mavi renkte açan türleri de vardır.
Tüylerle kaplı gövdesi serttir, yaprakları yeşil olmasına karşın gövdeye bağlandığı kısımları kırmızıdır ve bu güzel bir görüntü sağlar.
Yaprakları körpeyken
</textarea>
<div><button id="learn">Learn</button></div>
<textarea id="input" cols="40" rows="10">
Agac yasken egilir.
</textarea>
<div><button id="deasciify">Deasciify</button></div>
<div id="output"></div>
</body>
</html>
